perm filename ELEPHA.ABS[E89,JMC] blob
sn#878229 filedate 1989-10-10 generic text, type C, neo UTF8
COMMENT ā VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 %elepha.abs[e89,jmc] Abstract for lecture at IBM, 1989 Sept 29
C00005 ENDMK
Cā;
%elepha.abs[e89,jmc] Abstract for lecture at IBM, 1989 Sept 29
leora@ibm.com
Christos@cs.ucsd.edu
betsy@csli
title and abstract
Elephant 2000: A Programming Language Based on Speech Acts (preliminary)
Abstract: Elephant 2000 is a vehicle for some ideas about
programming language features.
1. Input and output are in an I-O language whose sentences are
meaningful speech acts approximately in the sense of philosophers
and linguists. These include questions, answers, offers,
acceptances, declinations, requests, permissions and promises.
2. The correctness of programs is partially defined in terms of
proper performance of the speech acts. Answers should be
truthful, and promises should be kept. Sentences of logic
expressing these forms of correctness can be generated
automatically from the form of the program.
3. Elephant source programs may not need data structures, because
they can refer directly to the past. Thus a program can say that
an airline passenger has a reservation if he has made one and
hasn't cancelled it.
4. Elephant programs themselves are represented as sentences of
logic. Their properties follow from this representation without
an intervening theory of programming or anything like Hoare
axioms.
5. Programs that interact non-trivially with the outside
world can have both {\it illocutionary} and {\it perlocutionary}
specifications, i.e. specifications relating inputs and outputs
and specifications concerning what they do in the world.